/**
 * 
 */
package sources;

import java.util.Collection;
import java.util.Iterator;
import java.util.List;

/**
 * @author Lookouster
 *
 */
public class Ouvrier extends sources.Employe {
	/*
 * (non-javadoc)
 */
private Qualification qualification;
 
/**
 * Getter of the property <tt>qualifications</tt>
 *
 * @return Returns the qualifications.
 * 
 */
public Qualification getQualification()
{
	return qualification;
}

/**
 * Setter of the property <tt>qualifications</tt>
 *
 * @param qualification The qualifications to set.
 *
 */
public void setQualification(Qualification qualification ){
	this.qualification = qualification;
}

	/**
 *
 */
private Collection<Remarque> remarque;

/**
 * Getter of the property <tt>remarque</tt>
 *
 * @return Returns the remarque.
 * 
 */
public Collection<Remarque> getRemarque()
{
	return remarque;
}
 
/**
 * Returns an iterator over the elements in this collection. 
 *
 * @return an <tt>Iterator</tt> over the elements in this collection
 * @see	java.util.Collection#iterator()
 * 
 */
public Iterator<Remarque> remarqueIterator(){
	return remarque.iterator();
}

/**
 * Returns <tt>true</tt> if this collection contains no elements.
 *
 * @return <tt>true</tt> if this collection contains no elements
 * @see	java.util.Collection#isEmpty()
 *
 */
public boolean isRemarqueEmpty(){
	return remarque.isEmpty();
}

/**
 * Returns <tt>true</tt> if this collection contains the specified element. 
 *
 * @param element whose presence in this collection is to be tested.
 * @see	java.util.Collection#contains(Object)
 *
 */
public boolean containsRemarque(Remarque remarque){
	return this.remarque.contains(remarque);
}

/**
 * Returns <tt>true</tt> if this collection contains all of the elements
 * in the specified collection.
 *
 * @param elements collection to be checked for containment in this collection.
 * @see	java.util.Collection#containsAll(Collection)
 *
 */
public boolean containsAllRemarque(Collection<Remarque> remarque){
	return this.remarque.containsAll(remarque);
}

/**
 * Returns the number of elements in this collection.
 *
 * @return the number of elements in this collection
 * @see	java.util.Collection#size()
 *
 */
public int remarqueSize(){
	return remarque.size();
}

/**
 * Returns all elements of this collection in an array.
 *
 * @return an array containing all of the elements in this collection
 * @see	java.util.Collection#toArray()
 *
 */
public Remarque[] remarqueToArray(){
	return remarque.toArray(new Remarque[remarque.size()]);
}


/**
 * Ensures that this collection contains the specified element (optional
 * operation). 
 *
 * @param element whose presence in this collection is to be ensured.
 * @see	java.util.Collection#add(Object)
 *
 */
public boolean addRemarque(Remarque remarque){
	return this.remarque.add(remarque);
}

/**
 * Setter of the property <tt>remarque</tt>
 *
 * @param remarque the remarque to set.
 *
 */
public void setRemarque(Collection<Remarque> remarque){
	this.remarque = remarque;
}

/**
 * Removes a single instance of the specified element from this
 * collection, if it is present (optional operation).
 *
 * @param element to be removed from this collection, if present.
 * @see	java.util.Collection#add(Object)
 *
 */
public boolean removeRemarque(Remarque remarque){
	return this.remarque.remove(remarque);
}

/**
 * Removes all of the elements from this collection (optional operation).
 *
 * @see	java.util.Collection#clear()
 *
 */
public void clearRemarque(){
	this.remarque.clear();
}
	/**
 *
 */
private Collection<EmploiTemps> emploiTemps;

/**
 * Getter of the property <tt>emploiTemps</tt>
 *
 * @return Returns the emploiTemps.
 * 
 */
public Collection<EmploiTemps> getEmploiTemps()
{
	return emploiTemps;
}
 
/**
 * Returns an iterator over the elements in this collection. 
 *
 * @return an <tt>Iterator</tt> over the elements in this collection
 * @see	java.util.Collection#iterator()
 * 
 */
public Iterator<EmploiTemps> emploiTempsIterator(){
	return emploiTemps.iterator();
}

/**
 * Returns <tt>true</tt> if this collection contains no elements.
 *
 * @return <tt>true</tt> if this collection contains no elements
 * @see	java.util.Collection#isEmpty()
 *
 */
public boolean isEmploiTempsEmpty(){
	return emploiTemps.isEmpty();
}

/**
 * Returns <tt>true</tt> if this collection contains the specified element. 
 *
 * @param element whose presence in this collection is to be tested.
 * @see	java.util.Collection#contains(Object)
 *
 */
public boolean containsEmploiTemps(EmploiTemps emploiTemps){
	return this.emploiTemps.contains(emploiTemps);
}

/**
 * Returns <tt>true</tt> if this collection contains all of the elements
 * in the specified collection.
 *
 * @param elements collection to be checked for containment in this collection.
 * @see	java.util.Collection#containsAll(Collection)
 *
 */
public boolean containsAllEmploiTemps(Collection<EmploiTemps> emploiTemps){
	return this.emploiTemps.containsAll(emploiTemps);
}

/**
 * Returns the number of elements in this collection.
 *
 * @return the number of elements in this collection
 * @see	java.util.Collection#size()
 *
 */
public int emploiTempsSize(){
	return emploiTemps.size();
}

/**
 * Returns all elements of this collection in an array.
 *
 * @return an array containing all of the elements in this collection
 * @see	java.util.Collection#toArray()
 *
 */
public EmploiTemps[] emploiTempsToArray(){
	return emploiTemps.toArray(new EmploiTemps[emploiTemps.size()]);
}


/**
 * Ensures that this collection contains the specified element (optional
 * operation). 
 *
 * @param element whose presence in this collection is to be ensured.
 * @see	java.util.Collection#add(Object)
 *
 */
public boolean addEmploiTemps(EmploiTemps emploiTemps){
	return this.emploiTemps.add(emploiTemps);
}

/**
 * Setter of the property <tt>emploiTemps</tt>
 *
 * @param emploiTemps the emploiTemps to set.
 *
 */
public void setEmploiTemps(Collection<EmploiTemps> emploiTemps){
	this.emploiTemps = emploiTemps;
}

/**
 * Removes a single instance of the specified element from this
 * collection, if it is present (optional operation).
 *
 * @param element to be removed from this collection, if present.
 * @see	java.util.Collection#add(Object)
 *
 */
public boolean removeEmploiTemps(EmploiTemps emploiTemps){
	return this.emploiTemps.remove(emploiTemps);
}

/**
 * Removes all of the elements from this collection (optional operation).
 *
 * @see	java.util.Collection#clear()
 *
 */
public void clearEmploiTemps(){
	this.emploiTemps.clear();
}

}
